alga-derive − automatic deriving of abstract algebra traits for Rust
alga-derive allows automatic deriving of traits provided by alga.
It supports deriving following alga traits:
AbstractQuasigroup
AbstractMonoid
AbstractSemigroup
AbstractGroup
AbstractGroupAbelian
AbstractRing
AbstractRingCommutative
AbstractField
The custom derive can also be used to generate quickcheck tests that check that algebraic properties are satisfied by the target of the derive.